package cn.edu.fzu.homemaking.chat.mapper;

import cn.edu.fzu.homemaking.chat.domain.dto.MessageCountDto;
import cn.edu.fzu.homemaking.chat.domain.entity.Message;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;

public interface MessageMapper {

    /** 查询出所有消息 **/
    List<Message> list(@Param("from") Long from, @Param("to") Long to, @Param("read") Boolean read,
                       @Param("origin") String origin);


    /** 统计所有消息数量 **/
    int count(@Param("from") Long from, @Param("to") Long to,@Param("origin") String origin);


    /** 统计发送消息人和发送数量 **/
    List<MessageCountDto> listFromUserCount(@Param("userId") Long userId,@Param("origin") String origin);


    void insert(@Param("from") Long from, @Param("to") Long to, @Param("msg") String msg,
                @Param("createTime") Date createTime, @Param("read") boolean read, @Param("origin") String origin);


    void updateBatchRead(@Param("ids") List<Long> idList);
}
